table.layout {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    table-layout: fixed;
    z-index: 100;
}
table.display {
    border: solid #a8a8a8;
    border-width: 0px 0px 0px 0px;   
}
table.display th,
table.display td {
    border: 1px solid #a8a8a8;  /*c6c3bd*/
    padding: 0 3px;
    text-align: left;
    overflow: hidden;
    white-space: nowrap;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}
table.display tr {
    height: 26px;
    line-height: 26px;
    font-weight: bold; 
    /*background: #cdcdcd;*/
    color: #3E3E3E;
    background: #F7F7F7;
    background: -moz-linear-gradient(top,  #cdcdcd 0%, #e3e3e3 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#cdcdcd), color-stop(100%,#e3e3e3));
    background: -webkit-linear-gradient(top,  #cdcdcd 0%,#e3e3e3 100%);
    background: linear-gradient(to bottom,  #cdcdcd 0%,#e3e3e3 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cdcdcd', endColorstr='#e3e3e3',GradientType=0 );
}
table.display tr th.cell_01 {
    font-weight: bold; 
    color: #3E3E3E;
    background: -moz-linear-gradient(top,  #cdcdcd 0%, #d8d8d8 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#cdcdcd), color-stop(100%,#d8d8d8));
    background: -webkit-linear-gradient(top,  #cdcdcd 0%,#d8d8d8 100%);
    background: linear-gradient(to bottom,  #cdcdcd 0%,#d8d8d8 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cdcdcd', endColorstr='#d8d8d8',GradientType=0 );
}
table.display tr th.cell_02 {
    color: #3E3E3E;
    background: -moz-linear-gradient(top,  #d8d8d8 0%, #e3e3e3 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#d8d8d8), color-stop(100%,#e3e3e3));
    background: -webkit-linear-gradient(top,  #d8d8d8 0%,#e3e3e3 100%);
    background: linear-gradient(to bottom,  #d8d8d8 0%,#e3e3e3 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d8d8d8', endColorstr='#e3e3e3',GradientType=0 );
}
.report {
    font-weight: bold; 
    text-align: center;
    vertical-align: middle;
    color: #3E3E3E;
    background: -moz-linear-gradient(top,  #cdcdcd 0%, #e3e3e3 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#cdcdcd), color-stop(100%,#e3e3e3));
    background: -webkit-linear-gradient(top,  #cdcdcd 0%,#e3e3e3 100%);
    background: linear-gradient(to bottom,  #cdcdcd 0%,#e3e3e3 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cdcdcd', endColorstr='#e3e3e3',GradientType=0 );
}
table.display td { background: #fff; }

table.responsive__table {
    /*box-shadow: 0 1px 10px rgba(0, 0, 0, 0.2);*/
    width: 100%;
    margin: 0;
    padding: 0;
    border-collapse: collapse;
    border-spacing: 0;
    table-layout: fixed;
    border: none; /*0px solid #c6c3bd;*/
    background-color: #c6c3bd;
    text-align: left;
    overflow: hidden;
    white-space: nowrap;
}
table.responsive__table tr {
    height: 24px;
    line-height: 24px;
}
table.responsive__table td {
    position: relative;
    border: 1px solid #c6c3bd;
    padding: 0 3px;
    text-align: left;
    overflow: hidden;
    white-space: nowrap;
}
table.responsive__table td.row__number {
    background-color: #edead8;
    text-align: center;
}

table.responsive__table tr:last-child td {
    border-bottom: none;
}

.grid__data_wrapper {
    position: relative;
    border-left: 1px solid #c6c3bd;
    border-bottom: 1px solid #c6c3bd;
    border-right: 1px solid #c6c3bd;
    overflow: auto;
    padding: 0px;
}

div.header__with__margin {
    overflow: hidden;
    border-right: 1px solid #a8a8a8;
}
div.header__with__margin::after {
    display: block;
    content: '';                /*CSS伪类用法*/
    position: absolute;         /*定位背景横线的位置*/
    top: 0px;
    right: 1px;
    border: 1px solid #a8a8a8;  /*c6c3bd*/
    background: #F7F7F7;
    background: -moz-linear-gradient(top,  #cdcdcd 0%, #e3e3e3 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#cdcdcd), color-stop(100%,#e3e3e3));
    background: -webkit-linear-gradient(top,  #cdcdcd 0%,#e3e3e3 100%);
    background: linear-gradient(to bottom,  #cdcdcd 0%,#e3e3e3 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cdcdcd', endColorstr='#e3e3e3',GradientType=0 );
    width: 17px;
    height: calc(100% - 2px);
    height: -moz-calc(100% - 2px);
    height: -webkit-calc(100% - 2px);
}
div.header__with__margin_02 {
    overflow: hidden;
    border-right: 1px solid #a8a8a8;
}
div.header__with__margin_02::after {
    display: block;
    content: '';                /*CSS伪类用法*/
    position: absolute;         /*定位背景横线的位置*/
    top: 0px;
    right: 1px;
    border: 1px solid #a8a8a8;  /*c6c3bd*/
    background: #F7F7F7;
    background: -moz-linear-gradient(top,  #cdcdcd 0%, #e3e3e3 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#cdcdcd), color-stop(100%,#e3e3e3));
    background: -webkit-linear-gradient(top,  #cdcdcd 0%,#e3e3e3 100%);
    background: linear-gradient(to bottom,  #cdcdcd 0%,#e3e3e3 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cdcdcd', endColorstr='#e3e3e3',GradientType=0 );
    width: 17px;
    height: 53px;
}

td.with__border__lines {
    position: relative;
    width: 100%;
}
td.with__border__lines::before {
    z-index: 10;
    display: block;
    content: '';                /*CSS伪类用法*/
    position: absolute;         /*定位背景横线的位置*/
    bottom: 18px;
    left: -1px;
    background: #a8a8a8;
    width: 100%;
    height: 1px; 
}
td.with__border__lines::after {
    display: block;
    content: '';                /*CSS伪类用法*/
    position: absolute;         /*定位背景横线的位置*/
    top: 0px;
    right: 19px;
    background: #a8a8a8;
    width: 1px;
    height: 100%; 
}

/*
  奇偶行颜色
--------------------------------------------------------------------------------------------------*/
table.responsive__table tr:nth-child(odd) {
    background-color: #fff;
}
table.responsive__table tr:nth-child(even) {
    background-color: #eee;
}

/* 被引用行的颜色*/
table.responsive__table tr.row__quoted {
    background-color: #606060;
    color: #fff;
}
/* 同预期有差异行的颜色*/
table.responsive__table tr.row__differ {
    background-color: #FFDE00;
    color: #000;
}

/* 分组行颜色 */
table.responsive__table tr.row__group01 {
    background-color: #ffffff;
    color: #000;
}
table.responsive__table tr.row__group02 {
    background-color: #eee; /*#f5f5f5;*/
    color: #000;
}
table.responsive__table tr.row__unusual {
    background-color: #FFDE00;
    color: #000;
}
/*鼠标经过的颜色*/
table.responsive__table tr.row__hover {
    background-color: #e5f3fb;
    color: #464646;
}
/* 鼠标点击的颜色*/
table.responsive__table tr.row__clicked {
    background-color: #32b0ed;
    color: #fff;
}
table.responsive__table tr.row__clicked td.row__number {
    background-color: #edead8;
    color: #000;
    text-align: center;
}
/* 选择行的颜色*/
table.responsive__table tr.row__selected {
    background-color: #4cc368;
    color: #fff;
}
table.responsive__table tr.row__selected td.row__number {
    background-color: #edead8;
    color: #000;
    text-align: center;
}
table.responsive__table tr.row__error {
    background-color: #d24726;
    color: #fff;
}
table.responsive__table tr.row__error td.row__number {
    background-color: #edead8;
    color: #000;
    text-align: center;
}

td.cell__01 {
    background-color: #d24726;
    color: #fff;
}
td.cell__02 {
    background-color: #270;
    color: #fff;
}
td.cell__03{
    background-color: blue;
    color: #fff;
}
table.responsive__table tr.row__hover td.cell__01,
table.responsive__table tr.row__hover td.cell__02,
table.responsive__table tr.row__hover td.cell__03 {
    background-color: #e5f3fb;
    color: #464646;
}
/* 鼠标点击的颜色*/
table.responsive__table tr.row__clicked td.cell__01,
table.responsive__table tr.row__clicked td.cell__02,
table.responsive__table tr.row__clicked td.cell__03 {
    background-color: #32b0ed;
    color: #fff;
}
/*
@media (max-width: 30em) {
    table.responsive-table{
        box-shadow: none;  
    }
    table.responsive-table thead{
        display: none; 
    }
    table.display th,
    table.display td{
        padding: .5em;
    }
    
  table.responsive-table td:nth-child(1):before{
    content: 'Number';
  }
  table.responsive-table td:nth-child(2):before{
    content: 'Name';
  }
  table.responsive-table td:nth-child(1),
  table.responsive-table td:nth-child(2){
    padding-left: 25%;
  }
  table.responsive-table td:nth-child(1):before,
  table.responsive-table td:nth-child(2):before{
    position: absolute;
    left: .5em;
    font-weight: bold;
  }
  
    table.responsive-table tr,
    table.responsive-table td{
        display: block;
    }
    table.responsive-table tr{
        position: relative;
        margin-bottom: 1em;
    box-shadow: 0 1px 10px rgba(0, 0, 0, 0.2);
    }
    table.responsive-table td{
        border-top: none;
    }
    table.responsive-table td.organisationnumber{
        background: #D5E0CC;
        border-top: 1px solid #B3BFAA;
    }
    table.responsive-table td.actions{
        position: absolute;
        top: 0;
        right: 0;
        border: none;
        background: none;
    }
}*/

/* 编辑删除样式
--------------------------------------------------------------------------------------------------*/
table.responsive__table > tbody > tr  > td.column__check  {
    vertical-align: middle;
    text-indent: 5px;
}

table.responsive__table > tbody > tr  > td.column__action {
    vertical-align: middle;
    text-align: center;
}

span.edit, span.trash {
    cursor: pointer;
}

/* 导航条样式
--------------------------------------------------------------------------------------------------*/
.panel__nav_strip {
    position: relative;
    top: 5px;
    float: right;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
}
.panel__nav_strip  span#loading__indicator {
    display: none;
}
.page-goto {
    padding: 0px 3px;
    vertical-align: top;
    margin-top: 5px;
    min-height: 20px;
    min-width: 35px;
}
.panel__nav_strip .arrow {
    cursor: pointer;
}
.panel__nav_strip select, .panel__nav_strip input[type="text"] {
    border: 1px solid #bbb;
    outline: none;
    height: 19px;
    line-height: 19px;
    padding: 0px;
    vertical-align: top;
    margin-top: 6px;
}
.panel__nav_strip input[type="text"] {
    padding: 0px 2px 0px 2px;
}
.panel__nav_strip select:focus, .panel__nav_strip input[type="text"]:focus {
    border: 1px solid #0081CB;
}
.panel__nav_strip .p_first {
    margin-left: 15px;
}

span.page-first {
    cursor: pointer;
}

span.page-first-disabled {
    color: #ccc;
    cursor: default;
}

span.page-previous {
    display: inline-block;
    cursor: pointer;
}

span.page-previous-disabled {
    display: inline-block;
    color: #ccc;
    cursor: default;
}

span.page-next {
    display: inline-block;
    cursor: pointer;
}

span.page-next-disabled {
    display: inline-block;
    color: #ccc;
    cursor: default;
}

span.page-last {
    display: inline-block;
    cursor: pointer;
}

span.page-last-disabled {
    display: inline-block;
    color: #ccc;
    cursor: default;
}

/* 表格编辑列样式
------------------------------------------------------------------------------*/
th.edit__column {
    position: relative;
    text-indent: 17px;
}
th.edit__column::before {
    font-family: FontAwesome;
    content: "\f040";
    position: absolute;
    left: -10px;
    color: #3E3E3E;
}

/* 单元格编辑样式
------------------------------------------------------------------------------*/
td.error {
    background-color: #d24726;
    color: #fff;
}

input.cell {
    position: absolute;
    top: 0px;
    left: 0px;
    background-color: #faffbd;
    border: 2px solid #0081CB;
    color: #000;
    padding: 0 1px;
    outline: 0px;
}

input.cellPopup {
    position: absolute;
    top: 0px;
    left: 0px;
    background-color: #faffbd;
    border: 2px solid #0081CB;
    color: #000;
    padding: 0 10px 0 1px;
    outline: 0px;
    cursor: pointer;
    background-image:
        linear-gradient(45deg, transparent 50%, gray 50%),
        linear-gradient(135deg, gray 50%, transparent 50%);
    background-position:
        calc(100% - 8px) calc(100% - 6px),
        calc(100% - 3px) calc(100% - 6px);
    background-position:
        -webkit-calc(100% - 8px) -webkit-calc(100% - 6px),
        -webkit-calc(100% - 3px) -webkit-calc(100% - 6px);
    background-position:
        -moz-calccalc(100% - 8px) -moz-calccalc(100% - 6px),
        -moz-calccalc(100% - 3px) -moz-calccalc(100% - 6px);
    background-size:
        5px 5px,
        5px 5px;
    background-repeat: no-repeat;
}

input.cellDate {
    position: absolute;
    top: 0px;
    left: 0px;
    background-color: #faffbd;
    border: 2px solid #0081CB;
    color: #000;
    padding: 0 16px 0 1px;
    outline: 0px;
    background-image: url(../images/icons/calendar.gif);
    background-position: right center;
    background-repeat: no-repeat;
    cursor: pointer;
}

td.edited-cell {
    background-clip: padding-box;
    position: relative;
}

td.dirty {
    background-image: url('../images/icons/dirty.gif');
    background-repeat: no-repeat;
    background-position: top right;
}

/* 表格排序样式
------------------------------------------------------------------------------*/
th.sort__column {
    position: relative;
    cursor: pointer;
}
th.sort__column::after {
    font-family: FontAwesome;
    content: "\f0dc";
    position: absolute;
    right: 8px;
    color: #999;
}
th.sort__column.asc::after {
    content: "\f0d8";
}
th.sort__column.desc::after {
    content: "\f0d7";
}
th.sort__column:hover::after {
    color: #3E3E3E;
}

/* 模拟excel拖动用
------------------------------------------------------------------------------*/
div.cell__drag_box{
    position: absolute;
    z-index: 99999; 
    display: block; 
    border: 3px solid #00BF8F;
    padding: 3px 0 0 1px;
}

.dragging_status{
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
}

/* 拖动层样式（用于拖动行）
 -----------------------------------------------------------------------------*/
div.lines__dragging {
    position: absolute;
    width: 30px; height:30px;
    display: block; 
    z-index: 999;
    opacity: 0.5;
    background: #000;
    border: 2px #000 solid;
    color: #fff;
    box-shadow: 0 1px 8px rgba(0, 0, 0, 0.8);
}
div.lines__dragging > i {
    margin-top: 1px;
    margin-left: 4px;
}

/* 通知人员显示区域
------------------------------------------------------------------------------*/
.huzo_notice_area {
    position: absolute;
    top: 12px;
    left: 550px;
    z-index: 10;
    width: 230px;
    height: 25px;
    line-height: 25px;
    font-size: 14px;
    font-weight: bold;
    color: white;
    text-shadow: 0 1px rgba(black, .05);
    text-align: center;
    background: #37bbe6;
    border-radius: 4px;
    cursor: pointer;
}
.huzo_notice_container {
    position: absolute;
    top: 0px;
    left: -65px;
    width: 360px;
    background: #BEF;/* white;*/
    background-clip: padding-box;
    border: 3px solid #37bbe6;
    border-radius: 5px;
    display: none;
    /*border-top: 5px solid #435757;
    background-color: rgba(255, 255, 255, .2);
    box-shadow: 0 0 20px rgba(0, 0, 0, .1);
    user-select: none;
    background: linear-gradient(-20deg, #d0b782 20%, #a0cecf 80%);*/
}
.huzo_notice_container h1 {
    /*margin: 0;
    padding: 8px 20px;
    background-color: rgba(255, 255, 255, .4);
    font-size: 1.2em;
    font-weight: bold;
    text-align: left;
    color: #435757;*/
    width: 230px;
    margin: -2px auto 20px;
    padding-bottom: 2px;
    line-height: 23px;
    line-height: 23px;
    font-size: 14px;
    font-weight: bold;
    color: white;
    text-shadow: 0 1px rgba(black, .05);
    text-align: center;
    background: #37bbe6;
    border-radius: 0 0 4px 4px;
}
.huzo_notice_container h1::after {
    display: block;
    float: right;
    font-weight: normal;
}
.huzo_notice_container .items {
    border-top: 1px solid #999; /*#e5ded6;*/
    margin: 0 8px 8px 8px;
    padding: 0;
    text-align: center;
}
.huzo_notice_container li {
    float: left;
    margin: 0;
    padding: 5px 0;
    font-size: 1em;
    width: 80px;
    color: #000;
}
.huzo_notice_container li:before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    background-color: #464646;
    border-radius: 50%;
    margin-right: 5px;
}
.huzo_notice_container li:last-child {
    border-bottom: none;
}
.huzo_notice_container span::before {
    content: '';
    display: block;
    position: absolute;
    top: 3px;
    bottom: 3px;
    left: -20px;
    width: 5px;
    background-color: #435757;
}
.huzo_notice_container span::after {
    display: block;
    float: right;
    font-weight: normal;
}
.huzo_notice_area:hover .huzo_notice_container {
    display: block;
}
/* 开关 不带显示字
------------------------------------------------------------------------------*/
.stv-switch {
    clear: both;
    position: absolute;
}

input.stv-checkbox-switch {
    position: absolute;
    left: -99999px;
    top: -99999px;
}
input.stv-checkbox-switch + label {
    position: relative;
    float: left;
    line-height: 1.6em;
    height: 1.6em;
    padding-left: 3.5em;
    /*margin: 0.2em 0;*/
    cursor: pointer;
}
input.stv-checkbox-switch + label::before, input.stv-checkbox-switch + label::after {
    position: absolute;
    left: 0;
    content: '';
    line-height: 1em;
    -webkit-transition: all 0.1s cubic-bezier(0.72, 0.21, 0.95, 0.64);
    transition: all 0.1s cubic-bezier(0.72, 0.21, 0.95, 0.64);
}
input.stv-checkbox-switch + label::before {
    width: 3em;
    top: 0;
    bottom: 0;
    background-color: #ff4242;
    border-radius: 1em;
    box-shadow: inset 0.13em 0.13em 0.2em rgba(0, 0, 0, 0.3);
}
input.stv-checkbox-switch + label::after {
    width: 1.4em;
    top: 0.1em;
    bottom: 0.1em;
    margin-left: 0.1em;
    border-radius: 50%;
    background-color: #fff;
}
input.stv-checkbox-switch:checked + label::before {
    background: #13cd4a;
}
input.stv-checkbox-switch:checked + label::after {
    margin-left: 1.5em;
}

/* 开关 带显示字
------------------------------------------------------------------------------*/
.switch {
    display: inline-block;
}
.switch input[type="checkbox"] {
    display: none;
}
.switch input[type="checkbox"] + label {
    display: block;
    position: relative;
    background: #fff;
    border:solid 2px red; /*#7d7d7d;*/
    -webkit-border-radius: 20px;
    border-radius: 20px;
    min-width: 40px;
    height: 22px;
    padding: 1px;
    cursor: pointer;
    -webkit-transition: background 0.5s ease;
    transition: background 0.5s ease;
    -webkit-user-select: none;
    user-select: none;
}
.switch input[type="checkbox"] + label:after {
    content: '';
    position: absolute;
    left: 2px;
    background: red; /*#7d7d7d;*/
    -webkit-border-radius: 16px;
    border-radius: 16px;
    width: 16px;
    height: 16px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.switch input[type="checkbox"] + label span {
    display: block;
    padding: 0 8px;
    height: 0;
    color: red; /*#7d7d7d;*/
    font-family: sans-serif;
    font-size: 12px;
    text-align: center;
    line-height: 16px;
    -webkit-transition: opacity 0.5s ease;
    transition: opacity 0.5s ease;
}
.switch input[type="checkbox"] + label span:first-child {
    padding-right: 26px;
    opacity: 0;
    visibility: hidden;
}
.switch input[type="checkbox"] + label span:last-child {
    padding-left: 26px;
}
.switch input[type="checkbox"]:checked + label {
    background: #00cf74; /*#fc6c27;*/
    border-color: #00cf74; /*#fc6c27;*/
}

.switch input[type="checkbox"]:checked + label:after {
    background: #fff;
}

.switch input[type="checkbox"]:checked + label span {
    color: #000;
}
.switch input[type="checkbox"]:checked + label span:first-child {
    opacity: 1;
    visibility: visible;
}
.switch input[type="checkbox"]:checked + label span:last-child {
    opacity: 0;
    visibility: hidden;
}
.switch input[type="checkbox"]:checked + label:after {
    left: 100%;
    margin-left: -17px;
}

/* 进度条
------------------------------------------------------------------------------*/
.progressbar {
    clear: both;
    position: relative;
    top: 4px;
    font-family: 'Open Sans', 'sans-serif';
    width:100%;
    background: #FFDE00;
    height:18px;
    border: 1px solid #464646;
    border-radius:3px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
}

.progressbar-title {
    position:absolute;
    top:0;
    left:0;
    font-weight:bold;
    font-size:13px;
    color:#fff;
    background:#6adcfa;
    -webkit-border-top-left-radius:3px;
    -webkit-border-bottom-left-radius:4px;
    -moz-border-radius-topleft:3px;
    -moz-border-radius-bottomleft:3px;
    border-top-left-radius:3px;
    border-bottom-left-radius:3px;
}

.progressbar-title span {
    display:block;
    background:rgba(0, 0, 0, 0.1);
    padding:0 20px;
    height:16px;
    line-height:16px;
    -webkit-border-top-left-radius:3px;
    -webkit-border-bottom-left-radius:3px;
    -moz-border-radius-topleft:3px;
    -moz-border-radius-bottomleft:3px;
    border-top-left-radius:3px;
    border-bottom-left-radius:3px;
}

.progressbar-bar {
    position:absolute;
    height:16px;
    width: 0px;
    background: #00cf74; /*#6adcfa;*/
    border-radius:3px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
}

.progress-bar-percent {
    position:absolute;
    right:10px;
    top:0;
    font-size:12px;
    height:16px;
    line-height:16px;
    color: #000; /*rgba(0, 0, 0, 0.4);*/
}

#page-size, #page-size_01, #page-size_02, #page-size_03, #page-size_04 {
    appearance:none;
    -moz-appearance:none;
    -webkit-appearance:none;
    height: 18px;
    line-height: 18px;
    width: 32px;
    padding: 0 10px 0 1px;

    background-image:
        linear-gradient(45deg, transparent 50%, gray 50%),
        linear-gradient(135deg, gray 50%, transparent 50%);
    background-position:
        calc(100% - 6px) calc(7px),
        calc(100% - 2px) calc(7px);
    background-size:
        4px 4px,
        4px 4px;
    background-repeat: no-repeat;
}